草庐IT

phpstorm 和 phpunit

全部标签

php - 为 PHPUnit 的模拟对象定义类型

我想知道是否可以使用phpdoc将特定范围内的某些对象(仅在方法内)定义为PHPUni的Mock,因此在该方法中我可以利用类型提示,例如正如->预期的那样,->方法等等,就像您只是创建模拟而不将其寻址到其真实类一样。这是一个演示:classsomeTestextendsPHPUnit{//here,usuallywedefinetherealclass(SomeClassinthisexample)/**@varSomeClass*/private$someMock;publicfunctionsetUp(){$this->someMock=$this->getMock(SomeCla

PhpStorm 插入和覆盖光标样式反转

我在使用编辑器光标时遇到问题。当我用闪烁的光标在编辑器中输入代码时,插入模式和覆盖模式的光标样式在屏幕上相互颠倒。我该如何解决? 最佳答案 打开菜单“帮助”->“查找操作...”。在打开的窗口中键入“overwrite”,然后双击键入后突出显示的“ToggleInsert/Overwrite”项。这将切换当前光标模式。在Windows中,它[切换]可能只需点击键盘上的“Ins”按钮即可实现,无需在菜单中查找操作。默认情况下,键盘键在许多程序中切换插入/覆盖模式。但我不确定它是否有效,因为我根本没有在Windows中使用PhpStor

php - mock & PHPUnit : method does not exist on this mock object

你能告诉我问题出在哪里吗?我有一个包含以下测试的GeneratorTest.php文件:shouldReceive('put')->with('foo.txt','foobar')->once();$generator=newGenerator($fileMock);$generator->fire();}publicfunctiontestGeneratorDoesNotOverwriteFile(){$fileMock=\Mockery::mock('\stats\jway\File');$fileMock->shouldReceive('exists')->once()->and

php - 如何使用 PHPUnit 测试 Web 服务?

我需要测试几个SOAP网络服务。我可以运行哪些类型的测试? 最佳答案 使用返回预先记录的结果XML的SoapClient模拟测试本地消费者类要好得多,因为单元测试旨在快速运行并且独立于远程服务。为您的Client类创建一个Mock类(您应该有一个SoapClient的对象包装器以便能够对其进行彻底测试)使用$this->returnValue()返回系统期望的预先记录的XML响应或header参见:http://www.phpunit.de/manual/current/en/test-doubles.html如果您的系统依赖于这些

php - PHPUnit 在哪里?

已解决!我从pear中卸载了phpunit,然后又重新安装了它。我相信我在安装之前使用了错误/旧/不足的来源。就像一个魅力!所以我正在尝试设置PEAR和PHPUnit。我在关注http://www.newmediacampaigns.com/page/install-pear-phpunit-xdebug-on-macosx-snow-leopard但是在我安装pear之后,我在/usr/local中有了一个不同的目录结构。无论如何,我能够运行phpunit安装。但是现在我迷路了,在我把事情弄得一团糟之前寻求帮助:)pear配置显示说:PEARdirectoryphp_dir/usr/

phpstorm 和远程服务器

我正在尝试配置PhpStorm,但我似乎无法根据他们自己的文档找到一些应该存在的选项。我正在尝试使用FTP连接到远程服务器,但是,关于部署、远程服务器、远程主机的任何选项都丢失了。是否必须启用某些设置才能访问它们?他们怎么会失踪?我正在使用PhpStorm6.0.3。 最佳答案 需要启用远程主机访问插件:然后你应该有可以添加服务器的部署设置: 关于phpstorm和远程服务器,我们在StackOverflow上找到一个类似的问题: https://stacko

php - 使用 Composer 为项目运行所有 PHPUnit 测试

我有一组PHP项目,其中一些依赖于其他项目。都有PHPUnit测试。所有这些都可以通过Composer安装,并使用composer.json文件指定它们的依赖项。每个项目的根目录中都有一个phpunit.xml.dist文件,它指向一个引导文件。现在我有这个项目Foo,它有许多直接依赖项和几个间接依赖项。对于Foo的CI,我想运行它的所有测试,以及它的所有依赖项。这是否可以通过Composer完成?如果没有,是否有一些标准的简洁方法可以做到这一点? 最佳答案 你可以试试composerscripts{"scripts":{"test

PHPUnit:需要打开失败 `PHPUnit_Extensions_Story_TestCase.php`

我安装了PHPUnit:wgethttps://phar.phpunit.de/phpunit.pharchmod+xphpunit.pharmvphpunit.phar/usr/local/bin/phpunit尝试运行一个简单的测试,但得到:Fatalerror:require_once():Failedopeningrequired'PHPUnit_Extensions_Story_TestCase.php'如何安装PHPUnit_Extensions_Story_TestCase?测试很简单:classTestFunctionsextendsPHPUnit_Framework_

php - 我可以在 phpunit 类中使用私有(private)函数吗?

我在“DefaultControllerTest”中有一些公共(public)函数。但是这些公共(public)函数中有一些通用代码-例如,我测试了几个不同的页面以确保出现一些文本。所以代码是类似的。所以我将公共(public)代码放入一个私有(private)函数中,然后我可以从每个公共(public)函数(从每个测试)调用它。但是我收到了这个错误:测试类“MyApp\MyBundle\Tests\Controller\DefaultControllerTest”中的测试方法“testHeader”未公开。testHeader是我从每个公共(public)函数测试的私有(privat

PHPUnit Laravel 哈希不可用

我在Laravel中有一个单元测试,用于测试看起来像这样的API调用,但是在运行它时出现以下运行时错误:RuntimeException:Afacaderoothasnotbeenset.我在setup方法中创建一个用户,目的是在tearDown()方法中再次删除它,然后运行我的身份验证测试。首先,有没有更好的方法来做我想做的事?例如在不接触数据库的情况下模拟用户?其次,如何设置“外观根”或该错误的确切含义是什么?为了创建一个Dummy用户,我尝试不费心去散列该特定字段,但错误似乎转移到了模型,在该模型中(再次)使用了Hash外观类。是否有任何额外的步骤来设置环境以便这些外观可以用于测